#ifndef _LIST_H
#define _LIST_H
#include "comment.h"
#include "ticket.h"     //存疑
//链表结构体
struct node
{
    void * pData;
    struct node *pPre;
    struct node *pNext;
};
typedef struct User
{
    int id;
    char name[20];
    char password[20];
    float cash;
}USER;

typedef struct 
{
    float cash;
    TICKET * ticket;
}UT;
USER * createUser();
void add(struct node *pHead,void * data);  //添加链表元素
void insert(struct node *pHead,int index,void * data);  //插入链表元素

void  delete(struct node *pHead,int index);//删除链表元素

struct node *create(void * data);//创建链表节点

struct node * createLists(struct node *pHead);//创建一个链表的头节点

//树的相关创建,树节点结构体创建
typedef struct tNode
{
    char cData;
    struct tNode *tLeft;
    struct tNode *tRight;
}TD;
//定义树根节点 
TD root;
//创建树节点
TD * createTree(char cData);
//插入节点
TD * iData(char * parr,int leng, int num);
//层次遍历树
void printLevel(TD * pRoot);
//创建搜索树，左子节点小于父节点，右子节点大于
TD * createSeachTree(char * pArr, int len);
//搜索树中是否存在该数
int searchTreeNode(TD *pRoot,char word);
#endif
